home *** CD-ROM | disk | FTP | other *** search
- // xorFileTesting.cpp
- // Automatically generated from breadboard by NeuroSolutions.
-
- #include "NSLib.h"
-
- BOOL networkStopped=FALSE;
- unsigned short int weightFileVersion=225;
-
- // Component Construction
- Axon inputAxon;
- File inputFile;
- FullSynapse hidden1Synapse;
- TanhAxon hidden1Axon;
- FullSynapse outputSynapse;
- TanhAxon outputAxon;
- File activeOutputProbe;
-
- int main() {
- srand((unsigned)time(NULL));
-
- // Component Initialization
- inputAxon.setRows(2);
- inputFile.setFilePath("inputFile.asc");
- inputFile.setMode(READ,ASCII);
- inputFile.setSpatialDimension(2,1);
- hidden1Axon.setRows(2);
- outputAxon.setRows(1);
- activeOutputProbe.setMode(WRITE,STANDARD);
- activeOutputProbe.setSpatialDimension(1,1);
- FILE *loadStream = fopen("xorWeights.nsw","r");
- if (!loadStream) {
- fprintf(stderr, "Could not open weight file xorWeights.nsw");
- exit(1);
- }
- weightFileVersion = getWeightFileVersion(loadStream);
-
- // Load Normalization Coefficients of Files
- inputFile.loadWeights(seekComponent(loadStream, "File", "inputFile"),weightFileVersion);
-
- // Component Interconnection
- inputAxon.setPreActivityAccess(&inputFile);
- outputAxon.setActivityAccess(&activeOutputProbe);
- inputAxon.setNext(&hidden1Synapse);
- hidden1Synapse.setLast(&inputAxon);
- hidden1Synapse.setNext(&hidden1Axon);
- hidden1Axon.setLast(&hidden1Synapse);
- hidden1Axon.setNext(&outputSynapse);
- outputSynapse.setLast(&hidden1Axon);
- outputSynapse.setNext(&outputAxon);
- outputAxon.setLast(&outputSynapse);
-
- // Load Axon Weights
- inputAxon.loadWeights(seekComponent(loadStream, "Axon", "inputAxon"),weightFileVersion);
- hidden1Axon.loadWeights(seekComponent(loadStream, "TanhAxon", "hidden1Axon"),weightFileVersion);
- outputAxon.loadWeights(seekComponent(loadStream, "TanhAxon", "outputAxon"),weightFileVersion);
-
- // Load Synapse Weights
- hidden1Synapse.loadWeights(seekComponent(loadStream, "FullSynapse", "hidden1Synapse"),weightFileVersion);
- outputSynapse.loadWeights(seekComponent(loadStream, "FullSynapse", "outputSynapse"),weightFileVersion);
- fclose(loadStream);
-
- // Get Ready to Run Network
-
- // Run Network
- int epochs = 1;
- int exemplars = 4;
- int epochsPerCV = 0;
- for (int epoch=0; epoch<epochs; epoch++) {
- for (int exemplar=0; exemplar<exemplars; exemplar++) {
- inputAxon.fire();
- if (networkStopped) {
- goto ConcludeFiring;
- }
- }
- if (networkStopped)
- goto ConcludeFiring;
- }
-
- ConcludeFiring:
-
-
- return 0;
- }
-
-